Managing assets using at least one policy and asset locations

ABSTRACT

Assets are managed using policies. Locations of the assets are also determined. A policy may apply to an asset as determined based on the location of the asset. If a policy applies to the asset, a control function is performed.

BACKGROUND

Tracking and managing computer systems and other equipment can be amonumental task, especially when a large number of items are beingtracked. Typically, tracking is performed manually. For example, officeequipment for large companies is often manually tracked and managed, andthe number of items being tracked may be in the thousands. Employeesphysically check each piece of equipment for inventory and to updateequipment locations. Similarly, large data centers may contain thousandsof computer systems that are manually tracked and managed. Manualtracking typically includes physically finding the server or other itembeing tracked. The location of the server may be written down and thenmanually entered into a spreadsheet or database. This task is repeatedfor each server and whenever maintenance is performed that requiresmovement of a server. The time and expense of manually tracking thecomputer systems and other equipment is astronomical. Furthermore,errors in entering location information for equipment may waste anenormous amount of time and expense when attempting to findmalfunctioning equipment having improperly entered location information.

In addition to tracking equipment, managing the equipment is anothermonumental task. For example, a data center or other environments mayhave policies for managing equipment, such as only authorized personnelare allowed to remove servers from a rack. However, implementing thepolicies and providing notifications of violations is a difficult task.For example, an authorized employee removes a server to take a picturefor a company brochure. The server is replaced by the employee but hasinadvertently become unplugged. It may take several hours for anadministrator to identify the problem and find the server that wasunplugged. Furthermore, although the policy of no unauthorized serverremoval was created, there is no means of automatically implementing anddetecting a violation.

BRIEF DESCRIPTION OF THE DRAWINGS

The embodiments are illustrated by way of example and without limitationin the accompanying figures in which like numeral references refer tolike elements, and wherein:

FIG. 1 shows a block diagram of a system, according to an embodiment;

FIG. 2 shows a block diagram of another system, according to anembodiment;

FIG. 3 shows a block diagram of a rack with alert devices, according toan embodiment;

FIG. 4 shows a flow chart of a method, according to an embodiment;

FIG. 5 shows a flow chart of another method, according to an embodiment;and

FIG. 6 shows a schematic block diagram of a computer system, accordingto an embodiment.

DETAILED DESCRIPTION

For simplicity and illustrative purposes, the principles are shown byway of examples of systems and methods described. In the followingdescription, numerous specific details are set forth in order to providea thorough understanding of the examples. It will be apparent however,to one of ordinary skill in the art, that the examples may be practicedwithout limitation to these specific details. In other instances, wellknown methods and structures are not described in detail so as not tounnecessarily obscure understanding of the examples.

FIG. 1 illustrates a system 100, according to an embodiment. The system100 includes an asset location system 101 and an asset management system102. The asset location system 101 determines the locations of assets120 and transmits the locations to the asset management system 102. Anasset is any object that can be tracked. For example, an asset mayinclude an electronic device, such as laptops, servers, and the like.Assets may also include non-electronic devices. In one embodiment, theassets are equipment in a data center. Examples of assets in a datacenter include computers, servers, switches, routers, power supplies,and storage appliances. The data center assets may be housed in racks.Assets that are not housed in racks and are not necessarily in a datacenter may also be tracked, such as laptops, printers, variousmachineries and racks or other storage units.

The type of location sensors 122 used may be based on the type of assetlocation system used. Examples of asset location systems that may beused in the system 100 for determining the locations of the assets 120and tracking the assets 120 include but are not limited to RFID systems,Global Positioning System (GPS) systems, RSSI triangulation systems, andultrasound systems. A GPS system may use a GPS receiver to calculatelocations using signals from GPS satellites. Many commercial locationsystems are based on RSSI triangulation using 802.11; where accesspoints measure signal strength from the asset to determine its location.Radio frequency (RF) systems measuring time of arrival to determineasset locations or RF/ultrasound systems measuring signal propagationspeed difference between RF and ultrasound signals may be used todetermine asset locations. An asset tracking system using RFID tags andreaders, such as described with respect to FIG. 2, may also be used.

The asset location system 101 may also include sensors 121 fordetermining sensor information associated with the assets. For example,the sensors 121 may include temperature sensors, rack door positionsensors, sensors for detecting whether users are authorized, and othertypes of sensors known in the art. The sensor information from thesensors 121 is sent to the asset management system 102 for managing theassets 120. It will be apparent to one of ordinary skill in the art thatthe sensors 121 may be included in a system that is separate from theasset location system 101.

The asset management system 102 is operable to receive the locations ofthe assets from the asset location system 101 and manage the assetsusing the locations and policies 103. The asset management system 102 isalso operable to receive the sensor information from the sensors 121,and the sensor information may also be used to manage the assets 120.The locations and the sensor information may be stored in a managementdatabase 130. Also, the policies 103 may be stored in the managementdatabase 130.

According to an embodiment, the asset management system 102 includes arule engine 110 and a control function module 111. The rule engine 110determines whether one or more of the policies 103 apply to one or moreof the assets 120 based on one or more of the locations of the assets120 and the sensor information for the assets 120. The policies 103 arerules for managing the assets 120. The policies may be defined by systemadministrators and stored in the management database 130 or generatedthrough other means. The management database 130 may be updated with newor revised policies.

The asset management system 102 also includes the control functionmodule 111. The control function module 111 performs a control function104 if the rule engine 102 determines that a policy applies to one ormore assets. A control function is an automated action taken in responseto a policy being applicable to one or more assets. A control functionmay include generating feedback indicating that a policy applies. Thefeedback may be provided as an alert, which may include sending an alertmessage, such as an email, page or text message, activating an audibleor visual alert device, or generating another type of alert. The alertsmay include user alerts for notifying system administrators or otherusers. Other examples of control functions include migrating serveroperations to other locations, triggering an automatic backup,controlling air flow, and generating a guided procedure. Through thepolicies 103, location and/or sensor information for the assets 120, andcontrol functions, the asset management system 102 is operable toautomatically recognize and react to dynamic conditions, which arereferred to as change management.

Examples of the policies 103 and control functions are as follows,however, it will be apparent to one of ordinary skill in the art thatpolicies other than described herein may be implemented by the assetmanagement system 102.

One example of a policy includes that a specific critical server shouldnot be moved at all, or not moved outside of a specific location. If theserver is moved, the rule engine 110 determines that the policy isapplicable to the server based on the location of the server. Thecontrol function module 111 generates an alert, such as sending an emailor text message to a system administrator.

Another example of a policy includes that a server performs a specificfunction and the backup server for the same function should never belocated in the same rack. If the server or the backup server is moved inthe same rack, such as determined by the locations received from theasset location system 101, the rule engine 110 determines that thepolicy applies to the server and the backup server, and the controlfunction module 111 may automatically elect a new server to be the newbackup server, and migrate the backup function from the old backupserver to the new backup server. Alternatively, the control functionmodule 111 may communicate with another system that selects the newserver and performs the migration. Also, a system administrator may benotified.

Other examples of policies use the sensor information from the sensors121 and may use the locations of the assets being affected to determinewhether a policy applies or whether to perform a control function. Forexample, an area in a data center or another environment is cooled by acooling system. A policy may determine that a certain type of serverrequires a lower ambient temperature than usual. The temperatureinformation from temperature sensors is used to verify that those typesof servers are not too hot. If one of such servers is too hot, thecontrol function module 111 sends a signal to turn up the airflow forthat server. In another example, a policy may require that a serverperforming a critical processing function is to be located in a coolzone of a data center. The temperature information is used to check thetemperature of that specific server. If this server becomes too hot, thecontrol function module 111 migrates the function from the hot server toa new server.

In another example, a rack door sensor is used to determine whetherassets located at a particular rack are being accessed. If the door of arack where a critical server resides is opened, an alert may begenerated. Also, sensors, such as cameras, badge readers, etc., may beused to detect unauthorized access to assets at particular locations andto trigger control functions, such as generating alerts. The rule engine110 determines that the policies regarding accessing the assets apply tothe assets in the rack, and the control function module 111 generatesthe alert. The alerts may include the locations of the assets that areaffected.

Other policies may include generating procedures for managing assetsusing the location of the assets and parameters specified in thepolicies for managing the assets. The procedures may include guidedprocedures that guide user action for performing a control function onthe assets. For example, a policy includes performing scheduledmaintenance, such as performing upgrades, on computer systems. Thepolicy applies to assets that are due for maintenance based on theschedule in this example. The control function module 111 determines thelocations of the assets and generates a list of the locations so anadministrator can perform the maintenance. The assets may be orderedsuch that the administrator performs the maintenance in the specifiedorder. The order may be determined such that if the order is followed,the least amount of time is spent walking to each asset or otherwiseaccessing each asset. A map may be generated that includes a path toeach of the assets in the specified order. For example, in a datacenter, a path through the data center showing the locations of theassets and the order to be followed may be generated. Knownvisualization tools may be used to generate the map. The policiesincluding guided procedures may not be limited to maintenance and mayinclude policies that guide a user to access assets for reasons otherthan maintenance. Also, if the procedure is not performed or if theorder is not followed an alert may be generated.

Other examples of policies generating procedures for managing assetsinclude retiring all servers of a particular model, and generating a mapof the data center identifying each rack housing the servers and howmany servers need to be retired. A policy may specify upgrading all theservers with less than a predetermined amount of memory. A map includingthe locations and the slots of the servers in a racks housing theservers is generated. Also, a step by step upgrade procedure may beprovided. In another example, sensor information is used to determinewhether the policy applies. For example, critical servers are to bemoved to cool zones of a data center. The control function module 111generates a map showing current locations and new locations for movingthe critical servers.

Out of band signaling, which may include activating alert devicesassociated with assets, may be used to identify assets that need to beaccessed or to identify assets for other reasons. Out of band signalingis described in further detail below with respect to FIG. 3.

FIG. 2 illustrates a system 200 operable to determine the locations ofassets and track and manage assets, according to an embodiment. Thesystem 200 may be used for assets in a data center or for assets inother environments. The assets are tracked using RFID tags and readersin one embodiment.

The system 200 includes racks 210 a-n housing assets, forwarders 220a-m, adaptors 230 a-f connected to back-end applications 240 a-f, aconfiguration server 250, and network services 260. The racks 210 a-nhouse many of the assets that may be tracked using one of more of theback-end applications 240. A detailed illustration of one of the racks,210 n, is shown in FIG. 2, including assets 211 a-x having RFID tags 212a-x. The assets 211 a-x may be provided in each slot of the rack 210 n.The racks 210 a-n may include conventional server racks. Conventionalracks may include 42 or more slots or a lesser number of slots, such as22 slots, and one or more assets may be provided in each slot. Thecomponents shown for the rack 210 n may be provided for each of theracks 210.

The RFID reader array 213 performs asset detection. The RFID tags 212a-x are read by the RFID reader array 213. Data from the RFID readerarray 213 is transmitted to a rack sensor controller 214.

In one embodiment, the RFID reader array 213 includes a readerpositioned relative to each slot in the rack 210 to read the RFID tags212 a-x for each asset 211 a-x. For example, each reader energizes acorresponding RFID tag 212 a-x mounted to an asset 211 a-x in a slot inthe rack 210 n. If the RFID tag, and thus the asset, is present, theRFID tag in that slot transmits its asset ID to the RFID reader in theRFID reader array 213 and is sent to the rack sensor controller 214. Inthis embodiment, 217 represents a reader per slot.

In another embodiment, the RFID reader array 213 includes a readerantenna positioned relative to each slot in the rack, instead of using areader per slot, to read the RFID tags 212 a-x for each of the assets211 a-x. Multiple antennas in the RFID reader array 213 may be connectedto a single reader. A switching circuit may be used to selectivelyactivate particular antennas to determine whether an asset is in aparticular slot in the rack 210 n. Each antenna may be designed todetect tags only in its corresponding slot and/or circuitry may beprovided to prevent coupling of near-by antennas to facilitate readingan RFID tag in a corresponding slot. One RFID reader 213 array may beprovided for multiple antennas, thus saving costs on readers. In thisembodiment, 217 represents an antenna per slot.

In another embodiment, there is 1-s readers for 1-n slots in a rack. Inthis embodiment, one or more readers may be provided for a rack, but thenumber of readers or the number of reader antennas is not necessarilyequivalent to the number of slots in a rack. There may be more or lessreaders or reader antennas than number of slots.

The RFID reader array 213 may be embedded or mounted on the rack, suchas on the front door or in another location on the rack. In one example,the RFID reader array 213 is a series of one or more circuit modules.Each module includes a circuit board pairing that contains one RFIDreader and a matching board containing seven RFID antennas. Each modulecovers a total of seven slots and hence six circuit modules can coverall the slots in an industry standard “42U” rack. Inter-modulecommunication between the rack sensor controller 214 and the readerboards may be performed using a single shared serial port. This portdaisy-chains through the reader boards and is used for autonomous moduleenumeration and for message passing between the modules.

One feature of the system 200 is the ability to perform pinpoint assetdetection. For example, each of the racks 210 a-n is fitted with an RFIDreader array that autonomously probes for assets with at least aresolution of one slot. The benefits of this design are numerous. Unlikemanual and barcode methods, probing is automatic and nearly continuous.No staff intensive activity is required and data is up to date. Also,asset identification is based on the data read from the RFID tags thatmay each be programmed with an asset ID. No mapping is needed afterreading the RFID tags to cross-reference logical names, such as hostnameor addresses, with permanent asset keys or IDs. Because the assetdetection mechanism is external, discovery occurs even when assets arenonfunctional, powered down or detached from the network. There is alsono dependence on the production infrastructure for tracing back throughnetwork wiring. Lastly, the system 200 performs better than a sparsecollection of RFID readers. Asset localization can be performed in-situand in real-time. The pinpoint resolution of a slot in a rack means thatlocation accuracy is as small as possible, such as down to actual assetsizes.

It will be apparent to one of ordinary skill in the art that the numberof components shown in the system 200 is by way of example and notlimitation. The number of components may vary based on the number ofassets being tracked or other factors.

Furthermore, the system 200 is modular and highly scalable. The RFIDreader arrays, rack sensor controllers, forwarders 220 a-m, adaptors 230a-f, configuration server 250 and the network services 260 modularizethe various functions which control the flow of location information.For example, when there are multiple back-end systems, such as theback-end applications 240 a-f, the forwarders 220 a-m can replicate androute information independent of either the rack hardware, such as racksensor controller, or the back-end systems. The modular design meansthat the various connections can be reconfigured easily and on-the-fly.

Furthermore, installation of various components of the system 200 in anexisting data center may not result in much down-time. For example, thetags 212 a-x are simply attached to each of the assets 211 a-x, whichcan be done while the assets 211 a-x are up and running. The RFID tags212 a-x can then be programmed with the ID of the asset. One method mayinclude a combination barcode reader/RFID writer which copies the serialand model numbers of the asset over to the tag. The manual tasks of tagattachment and programming are fast and may only need to be done onceover the lifetime of the asset.

The rack sensor controllers for each of the racks 210 a-n, whichincludes the rack sensor controller 214, receive sensor informationacquired by the RFID reader arrays and other sensors. For example, therack sensor controller 214 receives sensor information from the RFIDreader array 213, a door position sensor 215 sensing whether a rack doorhas been opened or closed, and the sensors 216. Examples of the sensors216 include but are not limited to temperature sensors, humidity andother environmental sensors, and sensors detecting whether an asset hasbeen added or removed from a slot in a rack. Another type of sensor ofthe sensors 216 may include an operator ID sensor that determines the IDof an operator accessing a rack or an asset in a rack. Operator IDsensors may be used to determine whether authorized personnel areaccessing an asset. The sensors 216 and the door position sensor 215 areoptional.

These sensors send sensor information to the rack sensor controller 214.The sensor information may include measurements or other sensedinformation, sensor ID, reader ID, and possibly other information.

Location information for each of the racks 210 a-n may be stored in therack sensor controllers for each of the racks 210 a-n. An example oflocation information for a rack in a data center may include a4-parameter location comprising a main location, a space in the mainlocation, an aisle in the space, and a rack number in the aisle. Thespace, for example, is a room or space in the main location. The numberis a number identifying a rack in the corresponding aisle. This locationmay be manually entered or sent to the rack sensor controllers from aconfiguration server 250. Other parameters may be used for the locationinformation. Many data centers use a logical description, such as thetriplet of room number, aisle number and rack number. The locationinformation may be sent to the asset management system 102 to be used aslocations for the assets.

Manual entry of the location information may be performed to minimizethe possibility of storing an incorrect location in a rack sensorcontroller. Location information may also be transmitted from theconfiguration server 250 when the rack sensor controller 214 is firstbooted up or updated.

The location information may also include a slot number of a rack. Forexample, the asset 211 j is detected in slot 10 of the 42-slot rack 210n. The slot number is stored in the rack sensor controller 214 as partof the location information along with associated sensor information.

Data may be programmed into the RFID tags for tracking. For example,asset IDs for the assets 211 a-x are stored in the RFID tags 212 a-x.The IDs may include a customer key for each asset. The customer keycomprises a unique ID provided by a user for each asset. In anotherexample, the IDs include an asset serial number, a product number, and amanufacturer ID for each asset. The tag serial numbers provided by thetag manufacturers may also be used in IDs.

In one example, the door position sensor 215 sends data to the racksensor controller 214 indicating whether a door for the rack 210 n isopened or closed. Determining whether the door is opened or closed areexamples of detecting a change in state, which may include detection ofa predetermined event. The rack sensor controller 214 may performcertain functions in response to detecting a predetermined event. Forexample the rack sensor controller 214 performs an RFID scan when thedoor closes and also on a periodic basis. The RFID scan includes readingRFID tags 212 a-x in the slots in the rack 210 n using the RFID readerarray 213. The rack sensor controller 214 sends the sensor informationand location information to one or more of the back-end applications 240a-f via components, such as the forwarders 220 a-m and the adaptors 230a-f. For example, the rack sensor controller 214 formats the sensor andlocation information into a message, and sends the message over anetwork to, for example, the forwarder 220 a.

Rack sensor controllers may be programmed to perform RFID scans orperform other functions in response to detecting an event other than theopening or closing of a rack door. For example, some of the racks 210a-n may not include doors. A sensor may be included on these racks thatdetects when an asset is pulled out of a slot or pushed into a slot.RFID scans may be performed upon detecting one of these events. Aperiodic RFID scan on no-door racks may be performed to generate bothevent or state messages, if a change is detected, and inventorymessages, on a periodic basis.

Sensor information and location information may also be sent to theforwarder 220 a in messages from the rack sensor controllers. Theforwarders 220 a-m forward the messages to one or more of the back-endapplications 140 a-f and may provide load-balancing and fail over. Eachof the forwarders 220 a-m may collect information from the rack sensorcontrollers of the racks 210 a-n and dispatch the information to one ormore of the back-end applications 220 a-f via adaptors 230 a-fcorresponding to the back-end applications 220 a-f. Each of the back-endapplications 240 a-f may use its own data format and procedures. Theadaptors 230 a-f convert messages from the forwarders 220 a-m to aformat compatible with a corresponding back-end application.

The messages generated by the rack sensor controllers for transmissionto the back-end applications 240 a-f may be state or stateless messages,according to an embodiment. A state message may be generated when achange in state of a rack is determined and sending the change in stateto a back-end application in the state message. For example, the racksensor controller 214 performs an RFID scan, which may be a periodicRFID scan or an RFID scan performed in response to the rack door beingclosed or temperature exceeding a threshold. The rack sensor controller214 determines that asset 211 j has been added to slot 10. The racksensor controller 214 sends a state message to the back-end application240 a indicating the asset 211 has been added to slot 10 for rack 210 nand tag data read from the RFID tag 212 j. The rack sensor controller214 may generate a state message in response to detection of apredetermined event, such as a rack door closing or temperatureexceeding a threshold. The state message includes changes in the stateof the rack, such as an asset is added or removed or a reading erroroccurred or temperature exceeds a threshold, etc. The state message maybe generated and transmitted in response to detecting a change in state.The state message is transmitted to a back-end application also keepingtrack of the state of the rack. For example, the state includes theasset 211 j has been added to the rack since the last message or lastinventory. The back-end application 240 a receives the update state ofthe asset 211 j and changes the state of the rack 210 n stored at theback-end application 240 a to include the newly added asset 211 j.

A stateless message may include the entire state of a rack, which can besent to a back-end application. For example, the rack sensor controller214 receives tag data from all the assets 211 a-x in the rack 210 n fromthe RFID reader array 213 and generates a message including all the tagdata. For example, an inventory message is a message including thecurrent state of all the assets in a rack that are being tracked. Therack sensor controller 214 sends the inventory message to, for example,the back-end application 240 a. Stateless messages may be generatedperiodically. For example, an RFID scan of the assets 211 a-x in therack 210 n is performed every hour and an inventory message is generatedand transmitted to the back-end application 240 a. In one embodiment,RFID scans are performed more often than the transmission of inventorymessages, which includes data from the RFID scans.

The back-end applications 240 a-f process information from the racksensor controllers and make the information available to users, whichmay be performed in real-time. The back-end applications 240 a-f mayinclude but are not limited to databases, visualization tools andmanagement tools, such as HP OpenView. The number and type of back-endapplications may vary for each data center. To maximize operational easeof use and efficiency, asset location information may be integrated intoan existing management application already deployed in the data center.In addition, a standalone, back-end, asset tracking application may beprovided as one of the back-end applications 240 a-f.

According to an embodiment, the asset management system 102 shown inFIG. 1 is provided as a back-end application in the system 200 shown inFIG. 2. The asset management system 102 is shown in FIG. 2 as theback-end application 240 f. Location and sensor information for theassets is received from the rack sensor controllers and used todetermine whether any of the policies 103 are applicable to the assets.Also, control functions may include sending messages to the rack sensorcontrollers or other systems. For example, the asset management system102, shown as the backend application 240 f, determines that a policy isapplicable to one or more assets of the assets 211. The asset managementsystem 102 performs a control function, such as sending a message to therack sensor controller 214 instructing the rack sensor controller 214 toactivate one or more alert devices 301. The alert devices 301 are alsoshown in FIG. 3 and are described in further detail below. In anotherexample, the asset management system 102 may send messages to the racksensor controllers to activate alert devices indicating the assets to beaccessed in a guided procedure. Other examples of the policies 103 thatmay be used for managing assets in the system 200 are described above.

The network services 260 may include standard network services found onmost intranets. Examples of network services may includeauto-configuring TCP/IP stacks for rack sensor controllers,synchronizing time clocks of the rack sensor controllers, and the like.

The configuration server 250 manages the configuration of the racksensor controllers for the racks 210 a-n from a central location tosimplify management of the rack sensor controllers. The configurationserver 250 may be connected to the rack sensor controllers of the racks210 a-n via a network for sending configuration information. Forexample, when the rack sensor controller 214 is booted up, itautomatically fetches its configuration data from the configurationserver 250. The configuration data may include which of the forwarders220 a-m the rack sensor controller 214 is to transmit messages. A listof addresses for forwarders may be sent to the rack sensor controller214. The configuration data may include several other parameters thatmay be customized for each rack sensor controller. For example, theconfiguration data may specify the time intervals for conducting aninventory, whether RFID tags should be read when the rack door is openedor closed, threshold values for temperature sensors, and other specifiedparameters.

According to an embodiment, alert devices are provided that generate analert associated with assets. The alert devices may be powered by apower source independent from the assets. Thus, if one or more of theassets malfunction or becomes in-operational, the alert devices arestill operable to generate an alert, which may include an alertindicating that an asset is down.

In one embodiment, the alert devices are provided on a rack, such asshown in FIG. 3. However, the alert devices may be provided on othertypes of storage units and each alert device may be associated with oneor more assets. An alert device may be located adjacent to the one ormore assets that the alert device is associated with, so if the alertdevice is activated it is easy to quickly identify the asset or assetsthat are associated with the alert.

FIG. 3 shows alert devices 301 a-x corresponding to each of the assets211 a-x. The alert devices 301 a-x may be provided on the rack 210 n.The alert devices 301 a-x may include LEDs or other visual devices,audible alert devices, a combination of visual and audible devices, orother alert devices as are known in the art. The locations of the alertdevices 301 a-x are not limited to the locations shown in FIG. 3. Thealert devices 301 a-x may be located proximate the slots for the rack210 n to provide information about corresponding assets 211 a-x. Thealert devices 301 a-x may be physically independent from the assets 211a-x. For example, the alert devices 301 a-x may not be attached to theassets 211 a-x. Also, the alert devices 301 a-x may receive power from apower supply independent of a power supply supplying power to the assets211 a-x.

In one embodiment, the alert devices 301 a-x may be mounted on the rackin positions corresponding to the slots for the assets. The RFID readerarray 213 and other components for the rack 210 n shown in FIG. 2 mayalso be provided for the rack 210 n but are not shown in FIG. 3 forpurposes of simplifying the illustration of the alert devices 301 a-xused in the rack 210 n. Also, the alert devices may be provided for eachof the racks or at least some of the racks 210 in the system 200 shownin FIG. 1.

Each of the alert devices 301 a-x correspond to an asset of the assets211 a-x and are operable to generate a signal indicating informationabout an asset. The alert devices 301 a-x may be controlled by the racksensor controller 214 to generate an alert in response to a detectedevent or in response to another condition. For example, the rack sensorcontroller 214 may detect the asset 211 j is not operational from sensorinformation. The rack sensor controller 214 activates the alert device301 j to generate a signal to indicate the asset 211 j is down. Inanother example, the network services 260 determine that the assets 211a, 211 j and 211 x need software updates. The network services 260 senda message to the rack sensor controller 214 indicating that the assets211 a, 211 j and 211 x need software updates. The rack sensor controller214 activates the alert devices 301 a, 301 j and 301× to generate asignal to indicate the assets 211 a, 211 j and 211 x need softwareupdates.

A control function performed in response to a policy being applicable toone or more of the assets may be used to activate one or more of thealert devices. For example, the asset management system 102 shown inFIG. 1 performs a control function, such as sending a message to therack sensor controller 214 to activate one or more of the alert devices301 a-j. For example, a policy may apply that indicates that the asset212 j needs to be accessed for maintenance. The asset management system102 sends a message to the rack sensor controller 214 requesting thealert device 312 j be activated. Activation of the alert device 312 jmay be part of a guided procedure set forth by a policy. If theprocedure is not followed for a particular asset then the alert devicefor the asset may be activated. In another example, if the policy isthat a critical server at a particular location should not be moved, thealert devices at the new and old locations may be activated.

In yet another embodiment, the asset management system 102 receives arequest from a user or another device to activate an alert deviceassociated with an asset or the asset management system 102 determinesthat an alert device for the asset needs to be activated based on apolicy. The asset management system 102 determines the location of theasset, for example, from locations stored in the management database130. A message is generated and transmitted to the rack sensorcontroller where the asset is housed. The location of the asset may beused to determine where to send the message and may be used to identifythe asset at the rack sensor controller. For example, information sentin the message may include an RFID tag serial number for an RFID tagused to track the asset, a MAC address for the asset, or anidentification of a slot in a rack where the asset resides. In oneembodiment, the message is sent to a rack sensor controller for a rackwhere the asset is housed, and the rack sensor controller determines theassociated alert device to activate based on the location or relatedlocation information in the message.

The rack sensor controllers, in addition to being operable to activatethe alert devices, are also operable to deactivate the alert devices.For example, after a control function is performed or after a systemadministrator provides notification that activation of an alert deviceis acknowledged, a rack sensor controller may deactivate an alertdevice. The rack sensor controller may receive a signal from the assetmanagement system or another system 102 indicating that a controlfunction for an asset was performed, or the rack sensor controller mayreceive input from a system administrator acknowledging activation of analert device. The rack sensor controller deactivates then deactivatesthe corresponding alert device or alert devices.

FIG. 4 shows a flow chart of method 400 for managing assets in a rackusing one or more policies, according to an embodiment. The method 400is described with respect to one or more of FIGS. 1-3 by way of exampleand not limitation. The method 400 may be used with other systems notshown.

At step 401, the asset management system 102 stores one or more policiesfor managing assets. The policies may be stored in the managementdatabase 130.

At step 402, the asset management system 102 receives the locations ofthe assets 120 from the asset location system 101.

At step 403, the asset management system 102 determines whether a policyapplies to one or more of the assets 120 based at least in part on theirlocations. In one embodiment, determining whether a policy applies mayinclude determining whether an asset is affected by rules specified inthe policy. Sensor information from the sensors 121 may also beconsidered if the policy uses the sensor information to make a decision.

At step 404, the asset management system 102 performs a control functionif the policy applies to one or more of the assets. In one example, thecontrol function includes performing a control function on the asset. Inother examples, the control function includes controlling another systemthat may directly or indirectly affect the asset. For example, a coolingsystem may be controlled, which indirectly affects the asset, or aprocess migration system is requested to migrate the processes of acritical server to another server, which directly affects the server.Other types of control functions may also be performed.

FIG. 5 shows a flow chart of method 500 for controlling activation ofone or more alert devices associated with assets, according to anembodiment. The method 500 includes steps for activating alert devices,which may be performed as an embodiment of the control functiondescribed at step 404 in the method 400. The method 500 is describedwith respect to one or more of FIGS. 1-3 by way of example and notlimitation. The method 500 may be used with other systems not shown.

At step 501, the asset management system 102 shown in FIG. 1 receiveslocations of the assets 120.

At step 502, the asset management system 102 identifies an asset forwhich an alert device is to be activated. For example, asset managementsystem 102 determines that a policy is applicable to an asset and thecontrol function is to activate the alert device for the asset.

At step 503, the asset management system 102 determines the location ofthe asset from the received locations.

At step 504, the asset management system 102 sends a message to activatethe alert device associated with the asset. For example, the assetmanagement system 102 determines that a policy applies to the asset andsends a message to the rack sensor controller controlling the alertdevice for the asset to activate the alert device. The message mayinclude the location of the asset or information associated with thelocation, such as an RFID tag serial number for an RFID tag used totrack the asset, a MAC address for the asset, or a slot in a rack if theasset is housed in a rack.

In another embodiment, the alert devices for assets may be activated inresponse to a user request or in response to instructions from a systemother than the asset management system. For example, a systemadministrator or another system may know the locations of certainassets, and requests the alert devices for the assets at thepredetermined locations to be activated.

FIG. 6 illustrates an exemplary block diagram of a computer system 600that includes one or more processors, such as processor 602, providingan execution platform for executing software, for example, including atleast some of the steps illustrated in the methods 400 and 500 and othersteps described herein. The processor 602 may also execute an operatingsystem (not shown) for executing the software in addition to performingoperating system tasks. The computer system 600 also includes a mainmemory 604, such as a Random Access Memory (RAM), where software may beresident during runtime, and mass storage 606. The mass storage 606 mayinclude a hard disk drive 607 and/or a removable storage drive 610,representing a floppy diskette drive, a magnetic tape drive, a compactdisk drive, or a flash nonvolatile memory where a copy of software ordata may be stored. Applications and resources may be stored in the massstorage 606 and transferred to the main memory 604 during run time. Themass storage 606 may also include ROM (read only memory), EPROM(erasable, programmable ROM), EEPROM (electrically erasable,programmable ROM). A bus 605 is shown for communicating data viacomponents of the computer system 600. Components of the computer system600 may communicate via a bus 605.

A network interface 616 is provided for communicating with theforwarders 220 a-m and other devices via a network. Also, sensorinterfaces 608 are provided for connecting to the RFID reader array 213,the sensors 216 and the door position sensor 215 shown in FIG. 2. Thecomputer system 600 is a simplified example of a platform. It will beapparent to one of ordinary skill in the art that the other componentsmay be added or components may be removed as needed. For example, one ormore interfaces may be provided for connecting one or more I/O devices.

One or more of the steps of the methods 400 and 500 and other stepsdescribed herein and software described herein, such as the modules ofthe asset management system 102 shown in FIG. 1, may be implemented assoftware embedded or stored on a computer readable medium, such as themain memory 604 or the mass storage 606, and executed by the processor602. The steps may be embodied by a computer program, which may exist ina variety of forms both active and inactive. For example, there mayexist as software program(s) comprised of program instructions in sourcecode, object code, executable code or other formats for performing someof the steps when executed. Any of the above may be stored on a computerreadable medium, which include storage devices and signals, incompressed or uncompressed form. Examples of suitable computer readablestorage devices include conventional computer system RAM (random accessmemory), ROM (read only memory), EPROM (erasable, programmable ROM),EEPROM (electrically erasable, programmable ROM), and magnetic oroptical disks or tapes. Examples of computer readable signals, whethermodulated using a carrier or not, are signals that a computer systemhosting or running the computer program may be configured to access,including signals downloaded through the Internet or other networks.Concrete examples of the foregoing include distribution of the programson a CD ROM or via Internet download. In a sense, the Internet itself,as an abstract entity, is a computer readable medium. The same is trueof computer networks in general. It is therefore to be understood thatthose functions enumerated herein may be performed by any electronicdevice capable of executing the above-described functions.

What has been described and illustrated herein are embodiments ofsystems and methods along with some of their variations. Thedescriptions and figures used herein are set forth by way ofillustration and are not meant as limitations. Those skilled in the artwill recognize that many variations are possible within the scope ofthese embodiments and the scope of the following claims and theirequivalents.

1. A method of managing assets using at least one policy, the methodcomprising: storing at least one policy associated with managing assets;receiving locations of the assets; automatically determining whether theat least one policy applies to at least one asset of the assets based atleast on the location of the at least one asset; and performing acontrol function if the policy applies to the at least one asset.
 2. Themethod of claim 1, further comprising: receiving sensor information fromsensors sensing information associated with the assets, and determiningwhether the at least one policy applies comprises determining whetherthe at least one policy applies based on the sensor information.
 3. Themethod of claim 1, wherein performing a control function comprises:generating a user alert indicating that the at least one policy applies.4. The method of claim 1, wherein performing a control function if thepolicy applies further comprises: controlling another system that isoperable to directly or indirectly affect the at least one asset.
 5. Themethod of claim 1, wherein determining whether the at least one policyapplies to at least one asset of the assets based at least on thelocation of the at least one asset further comprises: determiningwhether the at least one asset is affected by a rule provided in the atleast one policy.
 6. The method of claim 1, wherein performing a controlfunction if the policy applies to the at least one the assets furthercomprises: generating a procedure for managing the at least one assetusing the location of the at least one asset and parameters specified inthe at least one policy for managing the at least one asset.
 7. Themethod of claim 6, wherein the at least one policy includes a policyassociated with accessing assets and the at least one asset includes aplurality of assets, and generating a procedure further comprises:specifying an order for accessing the plurality of assets based on thelocations of the plurality of assets; and specifying the location ofeach of the plurality of assets in an order.
 8. The method of claim 7,wherein the order is based on a user being able to access the pluralityof assets in a least amount of time.
 9. The method of claim 7, whereinthe plurality of assets are housed in different racks in an area andspecifying the order and the location of each of the plurality of assetsfurther comprises: generating a map of the area; providing a path on themap to be followed by a user for accessing the plurality of assets. 10.The method of claim 7, wherein the plurality of assets are housed in atleast one rack, the method further comprising: activating an alertdevice adjacent each of the plurality of assets on the at least one rackto indicate the plurality of assets needing to be accessed.
 11. Themethod of claim 6, further comprising: determining whether the procedurewas performed; and generating an alert if the procedure was notperformed.
 12. A method of activating one or more alert devices based onat least one policy, the method comprising: storing at least one policyassociated with managing assets; storing locations of the assets;determining whether the at least one policy applies to at least oneasset of the assets based at least on the location of the at least oneasset; and sending a message to a controller for activating an alertdevice for the at least one asset if the policy applies to the at leastone asset.
 13. A rack controller system for a rack including slotshousing assets, the system comprising: a rack controller; and alertdevices provided on the rack, each alert device located adjacent one ormore of the slots to provide an alert signal for an asset housed in acorresponding slot, wherein the rack controller is operable to determinewhether an alert signal is to be generated for an asset of the assetsand is further operable to activate an alert device of the alert deviceslocated adjacent to the asset for generating the alert signal for theasset.
 14. The system of claim 13, wherein the alert devices comprise atleast one of a plurality of visual and audible indicators, each visualor audible indicator being located adjacent one or more of the slots.15. The system of claim 13, wherein the rack controller receives amessage requesting activation of an alert device corresponding to anasset housed in a rack.
 16. The system of claim 15, wherein the messageis generated based on a policy that is applicable to the asset.
 17. Thesystem of claim 15, further comprising: at least one sensors sensinginformation associated with the asset, and the policy uses theinformation to determine whether to activate the alert devicecorresponding to the asset.
 18. The system of claim 13, wherein the rackcontroller is operable to activate an alert device corresponding to oneof the assets housed in the rack in response to receiving a requestidentifying the one of the assets.
 19. The system of claim 13, whereinthe alert devices are physically independent of the assets.
 20. Thesystem of claim 13, wherein the rack controller is operable todeactivate the alert device.